#!/bin/bash

# 海外数据平台 - 生产环境构建脚本
# 适用于Linux/macOS服务器

echo "🚀 开始构建海外数据平台..."

# 检查Node.js版本
NODE_VERSION=$(node -v)
echo "📦 Node.js版本: $NODE_VERSION"

# 检查npm版本
NPM_VERSION=$(npm -v)
echo "📦 npm版本: $NPM_VERSION"

# 清理之前的构建
echo "🧹 清理之前的构建文件..."
rm -rf dist
rm -rf node_modules/.vite

# 安装依赖
echo "📥 安装项目依赖..."
npm ci --production=false

# 生产环境构建
echo "🔨 开始生产环境构建..."
npm run build:prod

# 检查构建结果
if [ $? -eq 0 ]; then
    echo "✅ 构建成功！"
    
    # 显示构建文件大小
    echo "📊 构建文件统计:"
    du -sh dist/*
    
    # 检查关键文件
    if [ -f "dist/index.html" ]; then
        echo "✅ index.html 已生成"
    else
        echo "❌ index.html 未找到"
        exit 1
    fi
    
    if [ -d "dist/assets" ]; then
        echo "✅ assets 目录已生成"
        echo "📁 assets 文件数量: $(find dist/assets -type f | wc -l)"
    else
        echo "❌ assets 目录未找到"
        exit 1
    fi
    
    # 压缩构建结果（可选）
    echo "🗜️  压缩构建结果..."
    tar -czf dataverify-$(date +%Y%m%d-%H%M%S).tar.gz dist/
    
    echo "🎉 构建完成！"
    echo "📁 构建目录: dist/"
    echo "📦 压缩包: dataverify-$(date +%Y%m%d-%H%M%S).tar.gz"
    
    # 部署建议
    echo ""
    echo "📋 部署建议:"
    echo "1. 将 dist/ 目录内容上传到服务器"
    echo "2. 配置Nginx/Apache服务器"
    echo "3. 启用Gzip压缩"
    echo "4. 配置CDN加速"
    echo "5. 设置合适的缓存策略"
    
else
    echo "❌ 构建失败！"
    exit 1
fi
